11110 - Equidivisions (DFS, maratón colombiana) &&
[and.git] / 445 - Marvelous Mazes / 455.cpp
bloba88a1a2322a457fe39ac28e44639611510164806
1 #include <cstdlib>
2 #include <cstdio>
3 #include <iostream>
4 #include <string>
7 using namespace std;
9 string multiplica(const string &c, const int &porCuanto){
10 string temp="";
11 for (int i=0; i<porCuanto; i++){
12 temp += c;
14 return temp;
17 bool esNumero(const string &s){
18 char c;
19 for (int i=0; i<s.length(); i++){
20 c = s.c_str()[i];
21 if (c > 57 || c < 48){
22 return false;
25 return true;
28 int main(int argc, char *argv[])
30 int cuantos=0;
32 string entrada;
33 while (cin.peek() != EOF){
34 getline(cin, entrada);
35 if (entrada == ""){
36 cout << endl;
37 cuantos=0;
38 continue;
41 string subStr;
42 for (int i=0; i<entrada.length(); i++){
43 subStr = entrada.substr(i,1);
44 if (esNumero(subStr)){
45 cuantos += atoi(subStr.c_str());
47 else if (subStr == "!"){
48 cout << endl;
49 cuantos=0;
51 else if (subStr == "b"){
52 cout << multiplica(" ", cuantos);
53 cuantos=0;
55 else {
56 cout << multiplica(subStr, cuantos);
57 cuantos=0;
61 cout << endl;
63 return 0;